home *** CD-ROM | disk | FTP | other *** search
Wrap
/* code was generated by Emperor */ #define ALL_REACTION_CLASSES #define ALL_REACTION_MACROS #include <stdio.h> #include <stdlib.h> #include <string.h> #include <math.h> #include <clib/alib_protos.h> #include <clib/asl_protos.h> #include <clib/dos_protos.h> #include <clib/exec_protos.h> #include <clib/gadtools_protos.h> #include <clib/graphics_protos.h> #include <clib/intuition_protos.h> #include <clib/locale_protos.h> #include <clib/resource_protos.h> #include <clib/utility_protos.h> #include <clib/colorwheel_protos.h> #include <clib/datebrowser_protos.h> #include <clib/texteditor_protos.h> #include <clib/wb_protos.h> #include <gadgets/colorwheel.h> #include <gadgets/datebrowser.h> #include <gadgets/gradientslider.h> #include <gadgets/tapedeck.h> #include <gadgets/texteditor.h> #include <proto/texteditor.h> #include <intuition/gadgetclass.h> #include <intuition/icclass.h> #include <intuition/imageclass.h> #include <reaction/reaction.h> #include <workbench/startup.h> #include <wbstartup.h> #define TapeDeckObject NewObject(NULL, "tapedeck.gadget" #define TextEditorObject NewObject(TEXTEDITOR_GetClass(), NULL #define LOCALE_WINDOW_TITLE1 GetCatalogStr(Catalog, 0, "Window") #define LOCALE_SCREEN_TITLE1 GetCatalogStr(Catalog, 1, "Workbench Screen") #define LOCALE_ICONIFIED_TITLE1 GetCatalogStr(Catalog, 2, "Iconified Program") #define Layout1 Gadget1[1] #define Clicktab1 Gadget1[2] #define Page1 Gadget1[3] #define Page2 Gadget1[4] #define Button1 Gadget1[5] #define Button2 Gadget1[6] #define Page3 Gadget1[7] #define Checkbox1 Gadget1[8] #define Checkbox2 Gadget1[9] #define Page4 Gadget1[10] #define Integer1 Gadget1[11] #define Label1 Gadget1[12] #define Integer2 Gadget1[13] #define Label2 Gadget1[14] #define Page5 Gadget1[15] #define Bitmap1 Gadget1[16] #define Page6 Gadget1[17] #define Button3 Gadget1[18] #define Bitmap2 Gadget1[19] #define Button4 Gadget1[20] #define Glyph1 Gadget1[21] #define Page7 Gadget1[22] #define Button5 Gadget1[23] #define Button6 Gadget1[24] #define Page8 Gadget1[25] #define Layout3 Gadget1[26] #define Bevel1 Gadget1[27] #define Page9 Gadget1[28] #define Clicktab2 Gadget1[29] #define Page10 Gadget1[30] #define Page11 Gadget1[31] #define Scroller1 Gadget1[32] #define Layout2 Gadget1[33] #define Slider1 Gadget1[34] #define Radiobutton1 Gadget1[35] #define Tapedeck1 Gadget1[36] #define Page12 Gadget1[37] #define Listbrowser1 Gadget1[38] void Window1_CloseWindow_Event(void); void Emperor_InitProgram(void); void Emperor_QuitProgram(void); void Emperor_AllocChooserNode(struct List *, char **, WORD *); void Emperor_AllocClicktabNode(struct List *, char **, WORD *); void Emperor_AllocListbrowserNode(struct List *, char **, WORD *); void Emperor_AllocRadiobuttonNode(struct List *, char **, WORD *); void Emperor_AllocListbrowserGadToolsNode(struct List *, char **); void Emperor_CloseScreen_Screen1(void); struct Screen *Emperor_OpenScreen_Screen1(void); void Emperor_CloseWindow_Window1(void); struct Window *Emperor_OpenWindow_Window1(void); ULONG stringlength(STRPTR); LONG stringtoint(STRPTR); DOUBLE stringtofloat(STRPTR); STRPTR inttostring(LONG); const char VERSION[] = "$VER: ClicktabExample 1.5 (15-Jul-2001)"; const char AUTHOR[] = "Matthias Gietzelt"; BYTE Emperor_Gadgetkind1[] = { 0, 12, 3, 12, 12, 0, 0, 12, 1, 1, 12, 11, 26, 11, 26, 12, 24, 12, 0, 24, 0, 25, 12, 0, 0, 12, 12, 23, 12, 3, 12, 12, 16, 12, 17, 15, 21, 12, 13, -1 }; char *Emperor_ClicktabArrayraw[] = { "node1", "node2", "node3", "node4", "node5", "node6", "node7", "node8", NULL }; WORD Emperor_ClicktabArrayattr[] = { 0, 0, 0, 0, 0, 0, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NULL }; char *Emperor_Clicktab2Arrayraw[] = { "some stuff", "other stuff", NULL }; WORD Emperor_Clicktab2Arrayattr[] = { 0, 0, 0, 0, 0, 0, 0, 0, -1, -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, -1, 0, 0, NULL }; void *VisualInfo1 = NULL; BOOL os35 = TRUE; BOOL terminated = FALSE; ULONG WindowSignals1 = 0L; Object *WindowObject1 = NULL; struct Catalog *Catalog = NULL; struct Gadget *Gadget1[39]; struct IntuiMessage *IntuiMessage = NULL; struct Library *IntuitionBase = NULL; struct Library *LocaleBase = NULL; struct Library *GadToolsBase = NULL; struct Library *ASLBase = NULL; struct Library *DOSLibBase = NULL; struct Library *ResourceBase = NULL; struct Library *WindowBase = NULL; struct Library *RequesterBase = NULL; struct Library *ButtonBase = NULL; struct Library *CheckBoxBase = NULL; struct Library *ChooserBase = NULL; struct Library *ClickTabBase = NULL; struct Library *ColorWheelBase = NULL; struct Library *DateBrowserBase = NULL; struct Library *FuelGaugeBase = NULL; struct Library *GetFileBase = NULL; struct Library *GetFontBase = NULL; struct Library *GetScreenModeBase = NULL; struct Library *GradientSliderBase = NULL; struct Library *IntegerBase = NULL; struct Library *LayoutBase = NULL; struct Library *ListBrowserBase = NULL; struct Library *PaletteBase = NULL; struct Library *RadioButtonBase = NULL; struct Library *ScrollerBase = NULL; struct Library *SliderBase = NULL; struct Library *SpaceBase = NULL; struct Library *SpeedBarBase = NULL; struct Library *StringBase = NULL; struct Library *TapeDeckBase = NULL; struct Library *TextEditorBase = NULL; struct Library *BevelBase = NULL; struct Library *BitMapBase = NULL; struct Library *GlyphBase = NULL; struct Library *LabelBase = NULL; struct List Emperor_Chooser_ClicktabArray; struct List Emperor_Clicktab_ClicktabArray; struct List Emperor_Listbrowser_ClicktabArray; struct List Emperor_Radiobutton_ClicktabArray; struct List Emperor_Listbrowser_GadTools_ClicktabArray; struct List Emperor_Chooser_Clicktab2Array; struct List Emperor_Clicktab_Clicktab2Array; struct List Emperor_Listbrowser_Clicktab2Array; struct List Emperor_Radiobutton_Clicktab2Array; struct List Emperor_Listbrowser_GadTools_Clicktab2Array; struct MsgPort *AppPort = NULL; struct MsgPort *MsgPort = NULL; struct Screen *Screen1 = NULL; struct Window *Window1 = NULL; void main(void) { ULONG Emperor_Code = 0L; ULONG Emperor_Input = 0L; ULONG Emperor_Micros = 0L; ULONG Emperor_Seconds = 0L; struct Gadget *Emperor_GadgetMessage = NULL; Emperor_InitProgram(); Emperor_OpenWindow_Window1(); while(!terminated) { Wait(WindowSignals1); while((Emperor_Input = RA_HandleInput(WindowObject1, &Emperor_Code)) != WMHI_LASTMSG) { switch(Emperor_Input & WMHI_CLASSMASK) { case WMHI_GADGETUP: switch(Emperor_Input & WMHI_GADGETMASK) { default: break; } break; case WMHI_GADGETHELP: switch(Emperor_Input & WMHI_GADGETMASK) { default: break; } break; case WMHI_MENUPICK: switch(Emperor_Input & WMHI_MENUMASK) { default: break; } break; case WMHI_MENUHELP: switch(Emperor_Input & WMHI_MENUMASK) { default: break; } break; case WMHI_CLOSEWINDOW: Window1_CloseWindow_Event(); break; case WMHI_ICONIFY: break; case WMHI_UNICONIFY: break; case WMHI_ACTIVE: break; case WMHI_INACTIVE: break; case WMHI_RAWKEY: break; case WMHI_VANILLAKEY: break; case WMHI_MOUSEBUTTONS: break; case WMHI_MOUSEMOVE: break; case WMHI_NEWSIZE: break; case WMHI_CHANGEWINDOW: break; case WMHI_DISPOSEDWINDOW: break; case WMHI_INTUITICK: break; } } } Emperor_QuitProgram(); } void wbmain(struct WBStartup *Emperor_ArgMsg) { main(); } void Emperor_InitProgram(void) { UWORD Emperor_InitVar = 0; char Emperor_OccuredError[50], Emperor_ExceptionString[300]; struct Task *Emperor_ThisTask = NULL; struct EasyStruct EmperorRequest_InitializationErrorRequest; IntuitionBase = OpenLibrary("intuition.library", 39L); if(!IntuitionBase) { Emperor_InitVar = 1; strcpy(Emperor_OccuredError, "intuition.library"); } LocaleBase = OpenLibrary("locale.library", 39L); if(!LocaleBase) { Emperor_InitVar = 1; strcpy(Emperor_OccuredError, "locale.library"); } GadToolsBase = OpenLibrary("gadtools.library", 39L); if(!GadToolsBase) { Emperor_InitVar = 1; strcpy(Emperor_OccuredError, "gadtools.library"); } ASLBase = OpenLibrary("asl.library", 39L); if(!ASLBase) { Emperor_InitVar = 1; strcpy(Emperor_OccuredError, "asl.library"); } DOSLibBase = OpenLibrary("dos.library", 39L); if(!DOSLibBase) { Emperor_InitVar = 1; strcpy(Emperor_OccuredError, "dos.library"); } ResourceBase = OpenLibrary("resource.library", 44L); if(!ResourceBase) { os35 = FALSE; strcpy(Emperor_OccuredError, "resource.library"); } WindowBase = OpenLibrary("window.class", 44L); if(!WindowBase) { os35 = FALSE; strcpy(Emperor_OccuredError, "window.class"); } RequesterBase = OpenLibrary("requester.class", 42L); if(!RequesterBase) { os35 = FALSE; strcpy(Emperor_OccuredError, "requester.class"); } ButtonBase = OpenLibrary("gadgets/button.gadget", 44L); if(!ButtonBase) { os35 = FALSE; strcpy(Emperor_OccuredError, "gadgets/button.gadget"); } CheckBoxBase = OpenLibrary("gadgets/checkbox.gadget", 44L); if(!CheckBoxBase) { os35 = FALSE; strcpy(Emperor_OccuredError, "gadgets/checkbox.gadget"); } ChooserBase = OpenLibrary("gadgets/chooser.gadget", 44L); if(!ChooserBase) { os35 = FALSE; strcpy(Emperor_OccuredError, "gadgets/chooser.gadget"); } ClickTabBase = OpenLibrary("gadgets/clicktab.gadget", 44L); if(!ClickTabBase) { os35 = FALSE; strcpy(Emperor_OccuredError, "gadgets/clicktab.gadget"); } ColorWheelBase = OpenLibrary("gadgets/colorwheel.gadget", 44L); if(!ColorWheelBase) { os35 = FALSE; strcpy(Emperor_OccuredError, "gadgets/colorwheel.gadget"); } DateBrowserBase = OpenLibrary("gadgets/datebrowser.gadget", 44L); if(!DateBrowserBase) { os35 = FALSE; strcpy(Emperor_OccuredError, "gadgets/datebrowser.gadget"); } FuelGaugeBase = OpenLibrary("gadgets/fuelgauge.gadget", 44L); if(!FuelGaugeBase) { os35 = FALSE; strcpy(Emperor_OccuredError, "gadgets/fuelgauge.gadget"); } GetFileBase = OpenLibrary("gadgets/getfile.gadget", 44L); if(!GetFileBase) { os35 = FALSE; strcpy(Emperor_OccuredError, "gadgets/getfile.gadget"); } GetFontBase = OpenLibrary("gadgets/getfont.gadget", 44L); if(!GetFontBase) { os35 = FALSE; strcpy(Emperor_OccuredError, "gadgets/getfont.gadget"); } GetScreenModeBase = OpenLibrary("gadgets/getscreenmode.gadget", 44L); if(!GetScreenModeBase) { os35 = FALSE; strcpy(Emperor_OccuredError, "gadgets/getscreenmode.gadget"); } GradientSliderBase = OpenLibrary("gadgets/gradientslider.gadget", 44L); if(!GradientSliderBase) { os35 = FALSE; strcpy(Emperor_OccuredError, "gadgets/gradientslider.gadget"); } IntegerBase = OpenLibrary("gadgets/integer.gadget", 44L); if(!IntegerBase) { os35 = FALSE; strcpy(Emperor_OccuredError, "gadgets/integer.gadget"); } LayoutBase = OpenLibrary("gadgets/layout.gadget", 44L); if(!LayoutBase) { os35 = FALSE; strcpy(Emperor_OccuredError, "gadgets/layout.gadget"); } ListBrowserBase = OpenLibrary("gadgets/listbrowser.gadget", 44L); if(!ListBrowserBase) { os35 = FALSE; strcpy(Emperor_OccuredError, "gadgets/listbrowser.gadget"); } PaletteBase = OpenLibrary("gadgets/palette.gadget", 44L); if(!PaletteBase) { os35 = FALSE; strcpy(Emperor_OccuredError, "gadgets/palette.gadget"); } RadioButtonBase = OpenLibrary("gadgets/radiobutton.gadget", 44L); if(!RadioButtonBase) { os35 = FALSE; strcpy(Emperor_OccuredError, "gadgets/radiobutton.gadget"); } ScrollerBase = OpenLibrary("gadgets/scroller.gadget", 44L); if(!ScrollerBase) { os35 = FALSE; strcpy(Emperor_OccuredError, "gadgets/scroller.gadget"); } SliderBase = OpenLibrary("gadgets/slider.gadget", 44L); if(!SliderBase) { os35 = FALSE; strcpy(Emperor_OccuredError, "gadgets/slider.gadget"); } SpaceBase = OpenLibrary("gadgets/space.gadget", 44L); if(!SpaceBase) { os35 = FALSE; strcpy(Emperor_OccuredError, "gadgets/space.gadget"); } SpeedBarBase = OpenLibrary("gadgets/speedbar.gadget", 44L); if(!SpeedBarBase) { os35 = FALSE; strcpy(Emperor_OccuredError, "gadgets/speedbar.gadget"); } StringBase = OpenLibrary("gadgets/string.gadget", 44L); if(!StringBase) { os35 = FALSE; strcpy(Emperor_OccuredError, "gadgets/string.gadget"); } TapeDeckBase = OpenLibrary("gadgets/tapedeck.gadget", 40L); if(!TapeDeckBase) { os35 = FALSE; strcpy(Emperor_OccuredError, "gadgets/tapedeck.gadget"); } TextEditorBase = OpenLibrary("gadgets/texteditor.gadget", 15L); if(!TextEditorBase) { os35 = FALSE; strcpy(Emperor_OccuredError, "gadgets/texteditor.gadget"); } BevelBase = OpenLibrary("images/bevel.image", 44L); if(!BevelBase) { os35 = FALSE; strcpy(Emperor_OccuredError, "images/bevel.image"); } BitMapBase = OpenLibrary("images/bitmap.image", 44L); if(!BitMapBase) { os35 = FALSE; strcpy(Emperor_OccuredError, "images/bitmap.image"); } GlyphBase = OpenLibrary("images/glyph.image", 44L); if(!GlyphBase) { os35 = FALSE; strcpy(Emperor_OccuredError, "images/glyph.image"); } LabelBase = OpenLibrary("images/label.image", 44L); if(!LabelBase) { os35 = FALSE; strcpy(Emperor_OccuredError, "images/label.image"); } Catalog = OpenCatalogA(NULL, "ClicktabExample.catalog", NULL); if(FindPort("ClicktabExample_Port")) Emperor_InitVar = 2; Emperor_ThisTask = FindTask(NULL); if(((ULONG) Emperor_ThisTask->tc_SPUpper - (ULONG) Emperor_ThisTask->tc_SPLower) < 4096) Emperor_InitVar = 4; Emperor_OpenScreen_Screen1(); VisualInfo1 = GetVisualInfo(Screen1, TAG_DONE); if(!VisualInfo1) Emperor_InitVar = 5; else { AppPort = CreateMsgPort(); if(!AppPort) Emperor_InitVar = 7; MsgPort = CreatePort("ClicktabExample_Port", 0); if(!MsgPort) Emperor_InitVar = 7; } if(os35) { Emperor_AllocChooserNode(&Emperor_Chooser_ClicktabArray, Emperor_ClicktabArrayraw, Emperor_ClicktabArrayattr); Emperor_AllocClicktabNode(&Emperor_Clicktab_ClicktabArray, Emperor_ClicktabArrayraw, Emperor_ClicktabArrayattr); Emperor_AllocListbrowserNode(&Emperor_Listbrowser_ClicktabArray, Emperor_ClicktabArrayraw, Emperor_ClicktabArrayattr); Emperor_AllocRadiobuttonNode(&Emperor_Radiobutton_ClicktabArray, Emperor_ClicktabArrayraw, Emperor_ClicktabArrayattr); } Emperor_AllocListbrowserGadToolsNode(&Emperor_Listbrowser_GadTools_ClicktabArray, Emperor_ClicktabArrayraw); if(os35) { Emperor_AllocChooserNode(&Emperor_Chooser_Clicktab2Array, Emperor_Clicktab2Arrayraw, Emperor_Clicktab2Arrayattr); Emperor_AllocClicktabNode(&Emperor_Clicktab_Clicktab2Array, Emperor_Clicktab2Arrayraw, Emperor_Clicktab2Arrayattr); Emperor_AllocListbrowserNode(&Emperor_Listbrowser_Clicktab2Array, Emperor_Clicktab2Arrayraw, Emperor_Clicktab2Arrayattr); Emperor_AllocRadiobuttonNode(&Emperor_Radiobutton_Clicktab2Array, Emperor_Clicktab2Arrayraw, Emperor_Clicktab2Arrayattr); } Emperor_AllocListbrowserGadToolsNode(&Emperor_Listbrowser_GadTools_Clicktab2Array, Emperor_Clicktab2Arrayraw); if((os35) && (!Emperor_InitVar)) { WindowObject1 = (Object *) WindowObject, WA_Left, 0, WA_Top, 17, WA_Width, 320, WA_Height, 400, WA_SizeGadget, TRUE, WA_DragBar, TRUE, WA_DepthGadget, TRUE, WA_CloseGadget, TRUE, WA_Activate, TRUE, WA_AutoAdjust, TRUE, WA_IDCMP, IDCMP_GADGETDOWN | IDCMP_GADGETUP | IDCMP_GADGETHELP | IDCMP_MENUPICK | IDCMP_MENUHELP | IDCMP_CLOSEWINDOW | IDCMP_ACTIVEWINDOW | IDCMP_INACTIVEWINDOW | IDCMP_RAWKEY | IDCMP_VANILLAKEY | IDCMP_MOUSEBUTTONS | IDCMP_MOUSEMOVE | IDCMP_NEWSIZE | IDCMP_CHANGEWINDOW | IDCMP_SIZEVERIFY | IDCMP_REFRESHWINDOW | IDCMP_INTUITICKS, WA_Title, LOCALE_WINDOW_TITLE1, WA_ScreenTitle, LOCALE_SCREEN_TITLE1, WA_PubScreen, Screen1, WINDOW_GadgetHelp, TRUE, WINDOW_IconifyGadget, FALSE, WINDOW_IconTitle, LOCALE_ICONIFIED_TITLE1, WINDOW_AppPort, AppPort, WINDOW_ParentGroup, (Object *) Gadget1[0] = (Object *) VGroupObject, LAYOUT_SpaceOuter, TRUE, LAYOUT_DeferLayout, TRUE, LAYOUT_AddChild, (Object *) Gadget1[1] = (Object *) LayoutObject, GA_ID, 0, GA_RelVerify, TRUE, GA_GadgetHelp, TRUE, LAYOUT_Label, "", LAYOUT_Orientation, 1, LAYOUT_HorizAlignment, LALIGN_LEFT, LAYOUT_VertAlignment, LALIGN_TOP, LAYOUT_LabelPlace, BVJ_TOP_CENTER, LAYOUT_BevelState, IDS_NORMAL, LAYOUT_BevelStyle, 4, LAYOUT_AddChild, (Object *) Gadget1[2] = (Object *) ClickTabObject, GA_ID, 1, GA_RelVerify, TRUE, GA_GadgetHelp, TRUE, CLICKTAB_Labels, (ULONG) &Emperor_Clicktab_ClicktabArray, CLICKTAB_Current, 0, CLICKTAB_PageGroup, (Object *) Gadget1[3] = (Object *) PageObject, GA_ID, 2, GA_RelVerify, TRUE, GA_GadgetHelp, TRUE, LAYOUT_Label, "", LAYOUT_Orientation, 1, LAYOUT_HorizAlignment, LALIGN_LEFT, LAYOUT_VertAlignment, LALIGN_TOP, LAYOUT_LabelPlace, BVJ_TOP_CENTER, LAYOUT_BevelState, IDS_NORMAL, LAYOUT_BevelStyle, 4, LAYOUT_FixedVert, TRUE, PAGE_Add, (Object *) Gadget1[4] = (Object *) LayoutObject, GA_ID, 3, GA_RelVerify, TRUE, GA_GadgetHelp, TRUE, LAYOUT_Label, "", LAYOUT_Orientation, 1, LAYOUT_LeftSpacing, 10, LAYOUT_TopSpacing, 10, LAYOUT_BottomSpacing, 10, LAYOUT_RightSpacing, 10, LAYOUT_HorizAlignment, LALIGN_LEFT, LAYOUT_VertAlignment, LALIGN_TOP, LAYOUT_LabelPlace, BVJ_TOP_CENTER, LAYOUT_BevelState, IDS_NORMAL, LAYOUT_BevelStyle, 4, LAYOUT_FixedVert, TRUE, LAYOUT_AddChild, (Object *) Gadget1[5] = (Object *) ButtonObject, GA_ID, 4, GA_RelVerify, TRUE, GA_GadgetHelp, TRUE, GA_Text, "", BUTTON_AutoButton, 4, BUTTON_BevelStyle, 1, BUTTON_Justification, 1, End, LAYOUT_AddChild, (Object *) Gadget1[6] = (Object *) ButtonObject, GA_ID, 5, GA_RelVerify, TRUE, GA_GadgetHelp, TRUE, GA_Text, "Button", BUTTON_AutoButton, 0, BUTTON_BevelStyle, 1, BUTTON_Justification, 1, End, End, PAGE_Add, (Object *) Gadget1[7] = (Object *) LayoutObject, GA_ID, 6, GA_RelVerify, TRUE, GA_GadgetHelp, TRUE, LAYOUT_Label, "", LAYOUT_Orientation, 1, LAYOUT_LeftSpacing, 10, LAYOUT_TopSpacing, 10, LAYOUT_BottomSpacing, 10, LAYOUT_RightSpacing, 10, LAYOUT_HorizAlignment, LALIGN_LEFT, LAYOUT_VertAlignment, LALIGN_TOP, LAYOUT_LabelPlace, BVJ_TOP_CENTER, LAYOUT_BevelState, IDS_NORMAL, LAYOUT_BevelStyle, 4, LAYOUT_FixedVert, TRUE, LAYOUT_AddChild, (Object *) Gadget1[8] = (Object *) CheckBoxObject, GA_ID, 7, GA_RelVerify, TRUE, GA_GadgetHelp, TRUE, GA_Text, "Checkbox1", CHECKBOX_TextPen, 1, CHECKBOX_FillTextPen, 1, CHECKBOX_BackgroundPen, 0, CHECKBOX_TextPlace, PLACETEXT_RIGHT, End, LAYOUT_AddChild, (Object *) Gadget1[9] = (Object *) CheckBoxObject, GA_ID, 8, GA_RelVerify, TRUE, GA_GadgetHelp, TRUE, GA_Text, "Checkbox2", CHECKBOX_TextPen, 1, CHECKBOX_FillTextPen, 1, CHECKBOX_BackgroundPen, 0, CHECKBOX_TextPlace, PLACETEXT_RIGHT, End, End, PAGE_Add, (Object *) Gadget1[10] = (Object *) LayoutObject, GA_ID, 9, GA_RelVerify, TRUE, GA_GadgetHelp, TRUE, LAYOUT_Label, "", LAYOUT_Orientation, 1, LAYOUT_LeftSpacing, 10, LAYOUT_TopSpacing, 10, LAYOUT_BottomSpacing, 10, LAYOUT_RightSpacing, 10, LAYOUT_HorizAlignment, LALIGN_LEFT, LAYOUT_VertAlignment, LALIGN_TOP, LAYOUT_LabelPlace, BVJ_TOP_CENTER, LAYOUT_BevelState, IDS_NORMAL, LAYOUT_BevelStyle, 4, LAYOUT_FixedVert, TRUE, LAYOUT_AddChild, (Object *) Gadget1[11] = (Object *) IntegerObject, GA_ID, 23, GA_RelVerify, TRUE, GA_GadgetHelp, TRUE, GA_TabCycle, TRUE, INTEGER_Number, 0, INTEGER_MaxChars, 10, INTEGER_Minimum, -30000, INTEGER_Maximum, 30000, INTEGER_Arrows, TRUE, End, CHILD_Label, (Object *) Gadget1[12] = (Object *) LabelObject, LABEL_Justification, 0, LABEL_Text, "Integer #1", End, LAYOUT_AddChild, (Object *) Gadget1[13] = (Object *) IntegerObject, GA_ID, 24, GA_RelVerify, TRUE, GA_GadgetHelp, TRUE, GA_TabCycle, TRUE, INTEGER_Number, 0, INTEGER_MaxChars, 10, INTEGER_Minimum, -30000, INTEGER_Maximum, 30000, INTEGER_Arrows, TRUE, End, CHILD_Label, (Object *) Gadget1[14] = (Object *) LabelObject, LABEL_Justification, 0, LABEL_Text, "Integer #2", End, End, PAGE_Add, (Object *) Gadget1[15] = (Object *) LayoutObject, GA_ID, 12, GA_RelVerify, TRUE, GA_GadgetHelp, TRUE, LAYOUT_Label, "", LAYOUT_Orientation, 1, LAYOUT_LeftSpacing, 10, LAYOUT_TopSpacing, 10, LAYOUT_BottomSpacing, 10, LAYOUT_RightSpacing, 10, LAYOUT_HorizAlignment, LALIGN_LEFT, LAYOUT_VertAlignment, LALIGN_TOP, LAYOUT_LabelPlace, BVJ_TOP_CENTER, LAYOUT_BevelState, IDS_NORMAL, LAYOUT_BevelStyle, 4, LAYOUT_FixedVert, TRUE, LAYOUT_AddImage, (Object *) Gadget1[16] = (Object *) BitMapObject, BITMAP_SourceFile, "ClicktabExample.jpg", BITMAP_Screen, Screen1, BITMAP_Precision, PRECISION_EXACT, End, End, PAGE_Add, (Object *) Gadget1[17] = (Object *) LayoutObject, GA_ID, 14, GA_RelVerify, TRUE, GA_GadgetHelp, TRUE, LAYOUT_Label, "", LAYOUT_Orientation, 1, LAYOUT_LeftSpacing, 10, LAYOUT_TopSpacing, 10, LAYOUT_BottomSpacing, 10, LAYOUT_RightSpacing, 10, LAYOUT_HorizAlignment, LALIGN_LEFT, LAYOUT_VertAlignment, LALIGN_TOP, LAYOUT_LabelPlace, BVJ_TOP_CENTER, LAYOUT_BevelState, IDS_NORMAL, LAYOUT_BevelStyle, 4, LAYOUT_FixedVert, TRUE, LAYOUT_AddChild, (Object *) Gadget1[18] = (Object *) ButtonObject, GA_ID, 15, GA_RelVerify, TRUE, GA_GadgetHelp, TRUE, GA_Text, "", BUTTON_AutoButton, 0, BUTTON_BevelStyle, 1, BUTTON_Justification, 1, BUTTON_RenderImage, (Object *) Gadget1[19] = (Object *) BitMapObject, BITMAP_SourceFile, "ClicktabExample.iff", BITMAP_Screen, Screen1, BITMAP_Precision, PRECISION_EXACT, End, End, LAYOUT_AddChild, (Object *) Gadget1[20] = (Object *) ButtonObject, GA_ID, 17, GA_RelVerify, TRUE, GA_GadgetHelp, TRUE, GA_Text, "", BUTTON_AutoButton, 0, BUTTON_BevelStyle, 1, BUTTON_Justification, 1, BUTTON_RenderImage, (Object *) Gadget1[21] = (Object *) GlyphObject, GLYPH_Glyph, 11, End, End, End, PAGE_Add, (Object *) Gadget1[22] = (Object *) LayoutObject, GA_ID, 19, GA_RelVerify, TRUE, GA_GadgetHelp, TRUE, LAYOUT_Label, "", LAYOUT_Orientation, 1, LAYOUT_LeftSpacing, 10, LAYOUT_TopSpacing, 10, LAYOUT_BottomSpacing, 10, LAYOUT_RightSpacing, 10, LAYOUT_HorizAlignment, LALIGN_LEFT, LAYOUT_VertAlignment, LALIGN_TOP, LAYOUT_LabelPlace, BVJ_TOP_CENTER, LAYOUT_BevelState, IDS_NORMAL, LAYOUT_BevelStyle, 4, LAYOUT_FixedVert, TRUE, LAYOUT_AddChild, (Object *) Gadget1[23] = (Object *) ButtonObject, GA_ID, 20, GA_RelVerify, TRUE, GA_GadgetHelp, TRUE, GA_Text, "", BUTTON_AutoButton, 0, BUTTON_BevelStyle, 1, BUTTON_Justification, 1, End, LAYOUT_AddChild, (Object *) Gadget1[24] = (Object *) ButtonObject, GA_ID, 21, GA_RelVerify, TRUE, GA_GadgetHelp, TRUE, GA_Text, "", BUTTON_AutoButton, 0, BUTTON_BevelStyle, 1, BUTTON_Justification, 1, End, End, PAGE_Add, (Object *) Gadget1[25] = (Object *) LayoutObject, GA_ID, 22, GA_RelVerify, TRUE, GA_GadgetHelp, TRUE, LAYOUT_Label, "", LAYOUT_Orientation, 1, LAYOUT_LeftSpacing, 10, LAYOUT_TopSpacing, 10, LAYOUT_BottomSpacing, 10, LAYOUT_RightSpacing, 10, LAYOUT_HorizAlignment, LALIGN_LEFT, LAYOUT_VertAlignment, LALIGN_TOP, LAYOUT_LabelPlace, BVJ_TOP_CENTER, LAYOUT_BevelState, IDS_NORMAL, LAYOUT_BevelStyle, 4, LAYOUT_FixedVert, TRUE, LAYOUT_AddChild, (Object *) Gadget1[26] = (Object *) LayoutObject, GA_ID, 26, GA_RelVerify, TRUE, GA_GadgetHelp, TRUE, LAYOUT_Label, "", LAYOUT_Orientation, 0, LAYOUT_HorizAlignment, LALIGN_LEFT, LAYOUT_VertAlignment, LALIGN_TOP, LAYOUT_LabelPlace, BVJ_TOP_CENTER, LAYOUT_BevelState, IDS_NORMAL, LAYOUT_BevelStyle, 4, LAYOUT_AddImage, (Object *) Gadget1[27] = (Object *) BevelObject, BEVEL_Label, "", BEVEL_LabelPlace, 0, BEVEL_Style, 5, End, End, End, PAGE_Add, (Object *) Gadget1[28] = (Object *) LayoutObject, GA_ID, 27, GA_RelVerify, TRUE, GA_GadgetHelp, TRUE, LAYOUT_Label, "", LAYOUT_Orientation, 1, LAYOUT_LeftSpacing, 10, LAYOUT_TopSpacing, 10, LAYOUT_BottomSpacing, 10, LAYOUT_RightSpacing, 10, LAYOUT_HorizAlignment, LALIGN_LEFT, LAYOUT_VertAlignment, LALIGN_TOP, LAYOUT_LabelPlace, BVJ_TOP_CENTER, LAYOUT_BevelState, IDS_NORMAL, LAYOUT_BevelStyle, 4, LAYOUT_FixedVert, TRUE, LAYOUT_AddChild, (Object *) Gadget1[29] = (Object *) ClickTabObject, GA_ID, 28, GA_RelVerify, TRUE, GA_GadgetHelp, TRUE, CLICKTAB_Labels, (ULONG) &Emperor_Clicktab_Clicktab2Array, CLICKTAB_Current, 0, CLICKTAB_PageGroup, (Object *) Gadget1[30] = (Object *) PageObject, GA_ID, 29, GA_RelVerify, TRUE, GA_GadgetHelp, TRUE, LAYOUT_Label, "", LAYOUT_Orientation, 1, LAYOUT_HorizAlignment, LALIGN_LEFT, LAYOUT_VertAlignment, LALIGN_TOP, LAYOUT_LabelPlace, BVJ_TOP_CENTER, LAYOUT_BevelState, IDS_NORMAL, LAYOUT_BevelStyle, 4, LAYOUT_FixedVert, TRUE, PAGE_Add, (Object *) Gadget1[31] = (Object *) LayoutObject, GA_ID, 30, GA_RelVerify, TRUE, GA_GadgetHelp, TRUE, LAYOUT_Label, "", LAYOUT_Orientation, 1, LAYOUT_LeftSpacing, 10, LAYOUT_TopSpacing, 10, LAYOUT_BottomSpacing, 10, LAYOUT_RightSpacing, 10, LAYOUT_HorizAlignment, LALIGN_LEFT, LAYOUT_VertAlignment, LALIGN_TOP, LAYOUT_LabelPlace, BVJ_TOP_CENTER, LAYOUT_BevelState, IDS_NORMAL, LAYOUT_BevelStyle, 4, LAYOUT_FixedVert, TRUE, LAYOUT_AddChild, (Object *) Gadget1[32] = (Object *) ScrollerObject, GA_ID, 31, GA_RelVerify, TRUE, GA_GadgetHelp, TRUE, SCROLLER_Orientation, SCROLLER_HORIZONTAL, SCROLLER_Arrows, TRUE, End, LAYOUT_AddChild, (Object *) Gadget1[33] = (Object *) LayoutObject, GA_ID, 37, GA_RelVerify, TRUE, GA_GadgetHelp, TRUE, LAYOUT_Label, "", LAYOUT_Orientation, 0, LAYOUT_HorizAlignment, LALIGN_LEFT, LAYOUT_VertAlignment, LALIGN_TOP, LAYOUT_LabelPlace, BVJ_TOP_CENTER, LAYOUT_BevelState, IDS_NORMAL, LAYOUT_BevelStyle, 4, LAYOUT_AddChild, (Object *) Gadget1[34] = (Object *) SliderObject, GA_ID, 32, GA_RelVerify, TRUE, GA_GadgetHelp, TRUE, SLIDER_Min, 0, SLIDER_Max, 100, SLIDER_Ticks, 9, SLIDER_TickSize, 5, SLIDER_Level, 0, SLIDER_Orientation, SLIDER_HORIZONTAL, SLIDER_ShortTicks, TRUE, End, LAYOUT_AddChild, (Object *) Gadget1[35] = (Object *) RadioButtonObject, GA_ID, 36, GA_RelVerify, TRUE, GA_GadgetHelp, TRUE, RADIOBUTTON_Labels, (ULONG) &Emperor_Radiobutton_ClicktabArray, RADIOBUTTON_LabelPlace, 0, RADIOBUTTON_Spacing, 0, End, End, LAYOUT_AddChild, (Object *) Gadget1[36] = (Object *) TapeDeckObject, GA_ID, 34, GA_RelVerify, TRUE, GA_GadgetHelp, TRUE, TDECK_Frames, 1, TDECK_Mode, 0, End, End, PAGE_Add, (Object *) Gadget1[37] = (Object *) LayoutObject, GA_ID, 33, GA_RelVerify, TRUE, GA_GadgetHelp, TRUE, LAYOUT_Label, "", LAYOUT_Orientation, 1, LAYOUT_LeftSpacing, 10, LAYOUT_TopSpacing, 10, LAYOUT_BottomSpacing, 10, LAYOUT_RightSpacing, 10, LAYOUT_HorizAlignment, LALIGN_LEFT, LAYOUT_VertAlignment, LALIGN_TOP, LAYOUT_LabelPlace, BVJ_TOP_CENTER, LAYOUT_BevelState, IDS_NORMAL, LAYOUT_BevelStyle, 4, LAYOUT_FixedVert, TRUE, LAYOUT_AddChild, (Object *) Gadget1[38] = (Object *) ListBrowserObject, GA_ID, 35, GA_RelVerify, TRUE, GA_GadgetHelp, TRUE, LISTBROWSER_AutoFit, TRUE, LISTBROWSER_ShowSelected, TRUE, LISTBROWSER_VerticalProp, TRUE, LISTBROWSER_HorizontalProp, TRUE, End, End, End, End, End, End, End, End, EndGroup, EndWindow; } if(os35) SetAttrs(Button5, BUTTON_RenderImage, Bitmap2, TAG_DONE); if(os35) SetAttrs(Button6, BUTTON_RenderImage, Glyph1, TAG_DONE); if(Emperor_InitVar) { strcpy(Emperor_ExceptionString, "Error during initialization:\n\n"); switch(Emperor_InitVar) { case 1: strcat(Emperor_ExceptionString, "Can't open Amiga-library\n\""); strcat(Emperor_ExceptionString, Emperor_OccuredError); strcat(Emperor_ExceptionString, "\"\n\nProbably you haven't got a\ncorrect installed AmigaOS system !"); break; case 2: strcat(Emperor_ExceptionString, "The program is already running.\n\nPlease close previous started program and try again."); break; case 4: strcat(Emperor_ExceptionString, "This program needs about 4096 bytes of stack to run.\n\n * when using CLI: type <stack 4096\n * when using Workbench: check icon information\n * when using DOpus5: modify Menu-Preferences-Environment-CLI-Start"); break; case 5: strcat(Emperor_ExceptionString, "Can't get visualinfo of the screen."); break; case 6: strcat(Emperor_ExceptionString, "Can't create menu."); break; case 7: strcat(Emperor_ExceptionString, "Can't create message-port."); break; } if(Emperor_InitVar >= 5) strcat(Emperor_ExceptionString, "\n\nMaybe there isn't enough memory !"); EmperorRequest_InitializationErrorRequest.es_StructSize = sizeof(struct EasyStruct); EmperorRequest_InitializationErrorRequest.es_Flags = 0L; EmperorRequest_InitializationErrorRequest.es_Title = (UBYTE *) "Program error"; EmperorRequest_InitializationErrorRequest.es_TextFormat = (UBYTE *) Emperor_ExceptionString; EmperorRequest_InitializationErrorRequest.es_GadgetFormat = (UBYTE *) "Okay"; EasyRequest(NULL, &EmperorRequest_InitializationErrorRequest, NULL, NULL); Emperor_QuitProgram(); } else { SetProgramName("ClicktabExample"); } } void Emperor_QuitProgram(void) { Emperor_CloseWindow_Window1(); if(WindowObject1) DisposeObject(WindowObject1); if(AppPort) DeleteMsgPort(AppPort); if(MsgPort) DeletePort(MsgPort); if(Screen1) UnlockPubScreen(NULL, Screen1); if(Catalog) CloseCatalog(Catalog); if(LabelBase) CloseLibrary(LabelBase); if(GlyphBase) CloseLibrary(GlyphBase); if(BitMapBase) CloseLibrary(BitMapBase); if(BevelBase) CloseLibrary(BevelBase); if(TextEditorBase) CloseLibrary(TextEditorBase); if(TapeDeckBase) CloseLibrary(TapeDeckBase); if(StringBase) CloseLibrary(StringBase); if(SpeedBarBase) CloseLibrary(SpeedBarBase); if(SpaceBase) CloseLibrary(SpaceBase); if(SliderBase) CloseLibrary(SliderBase); if(ScrollerBase) CloseLibrary(ScrollerBase); if(RadioButtonBase) CloseLibrary(RadioButtonBase); if(PaletteBase) CloseLibrary(PaletteBase); if(ListBrowserBase) CloseLibrary(ListBrowserBase); if(LayoutBase) CloseLibrary(LayoutBase); if(IntegerBase) CloseLibrary(IntegerBase); if(GradientSliderBase) CloseLibrary(GradientSliderBase); if(GetScreenModeBase) CloseLibrary(GetScreenModeBase); if(GetFontBase) CloseLibrary(GetFontBase); if(GetFileBase) CloseLibrary(GetFileBase); if(FuelGaugeBase) CloseLibrary(FuelGaugeBase); if(DateBrowserBase) CloseLibrary(DateBrowserBase); if(ColorWheelBase) CloseLibrary(ColorWheelBase); if(ClickTabBase) CloseLibrary(ClickTabBase); if(ChooserBase) CloseLibrary(ChooserBase); if(CheckBoxBase) CloseLibrary(CheckBoxBase); if(ButtonBase) CloseLibrary(ButtonBase); if(RequesterBase) CloseLibrary(RequesterBase); if(WindowBase) CloseLibrary(WindowBase); if(ResourceBase) CloseLibrary(ResourceBase); if(DOSLibBase) CloseLibrary(DOSLibBase); if(ASLBase) CloseLibrary(ASLBase); if(GadToolsBase) CloseLibrary(GadToolsBase); if(LocaleBase) CloseLibrary(LocaleBase); if(IntuitionBase) CloseLibrary(IntuitionBase); exit(0); } void Emperor_CloseScreen_Screen1(void) { if(Screen1) { UnlockPubScreen(NULL, Screen1); Screen1 = NULL; } } struct Screen *Emperor_OpenScreen_Screen1(void) { Screen1 = LockPubScreen(NULL); return(Screen1); } void Emperor_CloseWindow_Window1(void) { if(os35) { DoMethod(WindowObject1, WM_CLOSE, NULL); Window1 = NULL; WindowSignals1 = 0L; } } struct Window *Emperor_OpenWindow_Window1(void) { if(os35) { Window1 = RA_OpenWindow(WindowObject1); GetAttr(WINDOW_SigMask, WindowObject1, &WindowSignals1); } return(Window1); } void Emperor_AllocChooserNode(struct List *Emperor_List, char **Emperor_Labels, WORD *Emperor_Attributes) { WORD Emperor_Counter1 = 0; struct Node *Emperor_Node; if(os35) { NewList(Emperor_List); while(*Emperor_Labels) { Emperor_Node = AllocChooserNode(CNA_Text, *Emperor_Labels, CNA_Disabled, Emperor_Attributes[Emperor_Counter1], CNA_ReadOnly, Emperor_Attributes[Emperor_Counter1 + 1], TAG_DONE); AddTail(Emperor_List, Emperor_Node); Emperor_Labels++; Emperor_Counter1 += 12; } } } void Emperor_AllocClicktabNode(struct List *Emperor_List, char **Emperor_Labels, WORD *Emperor_Attributes) { WORD Emperor_Counter1 = 0, Emperor_Counter2 = 0; struct Node *Emperor_Node; if(os35) { NewList(Emperor_List); while(*Emperor_Labels) { Emperor_Node = AllocClickTabNode(TNA_Text, *Emperor_Labels, TNA_Disabled, Emperor_Attributes[Emperor_Counter1], TNA_Number, Emperor_Counter2, TAG_DONE); AddTail(Emperor_List, Emperor_Node); Emperor_Labels++; Emperor_Counter1 += 12; Emperor_Counter2++; } } } void Emperor_AllocListbrowserNode(struct List *Emperor_List, char **Emperor_Labels, WORD *Emperor_Attributes) { WORD Emperor_Counter1 = 0, Emperor_Counter2 = 0; struct Node *Emperor_Node; if(os35) { NewList(Emperor_List); while(*Emperor_Labels) { Emperor_Counter2 = 0; if(Emperor_Attributes[Emperor_Counter1 + 1]) Emperor_Counter2 += 1; if(Emperor_Attributes[Emperor_Counter1 + 2]) Emperor_Counter2 += 4; if(Emperor_Attributes[Emperor_Counter1 + 3]) Emperor_Counter2 += 8; if(Emperor_Attributes[Emperor_Counter1 + 4]) Emperor_Counter2 += 16; Emperor_Node = AllocListBrowserNode(1, LBNCA_Text, *Emperor_Labels, LBNCA_CopyText, TRUE, LBNA_Generation, Emperor_Attributes[Emperor_Counter1 + 10], LBNA_Column, Emperor_Attributes[Emperor_Counter1 + 11], LBNA_Flags, Emperor_Counter2, LBNA_Selected, Emperor_Attributes[Emperor_Counter1 + 5], LBNA_CheckBox, Emperor_Attributes[Emperor_Counter1 + 6], LBNA_Checked, Emperor_Attributes[Emperor_Counter1 + 7], TAG_DONE); AddTail(Emperor_List, Emperor_Node); Emperor_Labels++; Emperor_Counter1 += 12; } } } void Emperor_AllocRadiobuttonNode(struct List *Emperor_List, char **Emperor_Labels, WORD *Emperor_Attributes) { struct Node *Emperor_Node; if(os35) { NewList(Emperor_List); while(*Emperor_Labels) { Emperor_Node = AllocRadioButtonNode(1, RBNA_Labels, *Emperor_Labels, TAG_DONE); AddTail(Emperor_List, Emperor_Node); Emperor_Labels++; } } } void Emperor_AllocListbrowserGadToolsNode(struct List *Emperor_List, char **Emperor_Labels) { struct Node *Emperor_Node; struct Remember *Emperor_RememberKey; NewList(Emperor_List); while(*Emperor_Labels) { Emperor_Node = (struct Node *) AllocRemember(&Emperor_RememberKey, sizeof(struct Node), MEMF_CLEAR); Emperor_Node->ln_Name = *Emperor_Labels; AddTail(Emperor_List, Emperor_Node); Emperor_Labels++; } } ULONG stringlength(STRPTR Emperor_StringBuffer) { ULONG Emperor_Counter = 0; while(Emperor_StringBuffer[Emperor_Counter] != NULL) Emperor_Counter++; return(Emperor_Counter); } LONG stringtoint(STRPTR Emperor_StringBuffer) { return(atol(Emperor_StringBuffer)); } DOUBLE stringtofloat(STRPTR Emperor_StringBuffer) { return(atof(Emperor_StringBuffer)); } #include <math.h> STRPTR inttostring(LONG Emperor_IntegerInput) { char *Emperor_StringOutput = "abcdefghijk"; STRPTR Emperor_StringBegin; BYTE Emperor_Counter, Emperor_IntegerLength = 0; LONG buffer; strcpy(Emperor_StringOutput, ""); Emperor_StringBegin = Emperor_StringOutput; if(Emperor_IntegerInput < 0) { *Emperor_StringOutput++ = '-'; Emperor_IntegerInput = -Emperor_IntegerInput; } buffer = Emperor_IntegerInput; do { buffer = buffer / 10; Emperor_IntegerLength++; } while(buffer > 0); for(Emperor_Counter = 1;Emperor_Counter <= Emperor_IntegerLength;Emperor_Counter++) { buffer = (LONG) (Emperor_IntegerInput / (LONG) pow(10, Emperor_IntegerLength - Emperor_Counter)); Emperor_IntegerInput -= buffer * (LONG) pow(10, Emperor_IntegerLength - Emperor_Counter); *Emperor_StringOutput++ = (char) (buffer + 48); } *Emperor_StringOutput = NULL; Emperor_StringOutput = Emperor_StringBegin; return(Emperor_StringOutput) } #include <ClicktabExample.h>